<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Scripts and Languages</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
<link rel="home" href="index.html" title="Pango Reference Manual">
<link rel="up" href="pango.html" title="Basic Pango Interfaces">
<link rel="prev" href="pango-Layout-Objects.html" title="Layout Objects">
<link rel="next" href="pango-Bidirectional-Text.html" title="Bidirectional Text">
<meta name="generator" content="GTK-Doc V1.10 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
<link rel="chapter" href="pango.html" title="Basic Pango Interfaces">
<link rel="chapter" href="rendering.html" title="Rendering with Pango">
<link rel="chapter" href="lowlevel.html" title="Low Level Functionality">
<link rel="chapter" href="tools.html" title="Pango Tools">
<link rel="chapter" href="pango-hierarchy.html" title="Object Hierarchy">
<link rel="index" href="index-all.html" title="Index">
<link rel="index" href="index-deprecated.html" title="Index of deprecated symbols">
<link rel="index" href="index-1.2.html" title="Index of new symbols in 1.2">
<link rel="index" href="index-1.4.html" title="Index of new symbols in 1.4">
<link rel="index" href="index-1.6.html" title="Index of new symbols in 1.6">
<link rel="index" href="index-1.8.html" title="Index of new symbols in 1.8">
<link rel="index" href="index-1.10.html" title="Index of new symbols in 1.10">
<link rel="index" href="index-1.12.html" title="Index of new symbols in 1.12">
<link rel="index" href="index-1.14.html" title="Index of new symbols in 1.14">
<link rel="index" href="index-1.16.html" title="Index of new symbols in 1.16">
<link rel="index" href="index-1.18.html" title="Index of new symbols in 1.18">
<link rel="index" href="index-1.20.html" title="Index of new symbols in 1.20">
<link rel="index" href="index-1.22.html" title="Index of new symbols in 1.22">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="pango-Layout-Objects.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="pango.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">Pango Reference Manual</th>
<td><a accesskey="n" href="pango-Bidirectional-Text.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts"><nobr><a href="#pango-Scripts-and-Languages.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#pango-Scripts-and-Languages.description" class="shortcut">Description</a></nobr></td></tr>
</table>
<div class="refentry" lang="en">
<a name="pango-Scripts-and-Languages"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="pango-Scripts-and-Languages.top_of_page"></a>Scripts and Languages</span></h2>
<p>Scripts and Languages — Identifying writing systems and languages</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="pango-Scripts-and-Languages.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
enum                <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a>;
#define             <a class="link" href="pango-Scripts-and-Languages.html#PANGO-TYPE-SCRIPT:CAPS" title="PANGO_TYPE_SCRIPT">PANGO_TYPE_SCRIPT</a>
                    <a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter">PangoScriptIter</a>;
<a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a>         <a class="link" href="pango-Scripts-and-Languages.html#pango-script-for-unichar" title="pango_script_for_unichar ()">pango_script_for_unichar</a>            (<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html#gunichar"
>gunichar</a> ch);
<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a>*      <a class="link" href="pango-Scripts-and-Languages.html#pango-script-get-sample-language" title="pango_script_get_sample_language ()">pango_script_get_sample_language</a>    (<a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a> script);
<a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter">PangoScriptIter</a>*    <a class="link" href="pango-Scripts-and-Languages.html#pango-script-iter-new" title="pango_script_iter_new ()">pango_script_iter_new</a>               (const char *text,
                                                         int length);
void                <a class="link" href="pango-Scripts-and-Languages.html#pango-script-iter-get-range" title="pango_script_iter_get_range ()">pango_script_iter_get_range</a>         (<a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter">PangoScriptIter</a> *iter,
                                                         G_CONST_RETURN char **start,
                                                         G_CONST_RETURN char **end,
                                                         <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a> *script);
<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            <a class="link" href="pango-Scripts-and-Languages.html#pango-script-iter-next" title="pango_script_iter_next ()">pango_script_iter_next</a>              (<a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter">PangoScriptIter</a> *iter);
void                <a class="link" href="pango-Scripts-and-Languages.html#pango-script-iter-free" title="pango_script_iter_free ()">pango_script_iter_free</a>              (<a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter">PangoScriptIter</a> *iter);
                    <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a>;
#define             <a class="link" href="pango-Scripts-and-Languages.html#PANGO-TYPE-LANGUAGE:CAPS" title="PANGO_TYPE_LANGUAGE">PANGO_TYPE_LANGUAGE</a>
<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a>*      <a class="link" href="pango-Scripts-and-Languages.html#pango-language-from-string" title="pango_language_from_string ()">pango_language_from_string</a>          (const char *language);
const char*         <a class="link" href="pango-Scripts-and-Languages.html#pango-language-to-string" title="pango_language_to_string ()">pango_language_to_string</a>            (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language);
<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            <a class="link" href="pango-Scripts-and-Languages.html#pango-language-matches" title="pango_language_matches ()">pango_language_matches</a>              (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language,
                                                         const char *range_list);
<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            <a class="link" href="pango-Scripts-and-Languages.html#pango-language-includes-script" title="pango_language_includes_script ()">pango_language_includes_script</a>      (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language,
                                                         <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a> script);
const <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a>*  <a class="link" href="pango-Scripts-and-Languages.html#pango-language-get-scripts" title="pango_language_get_scripts ()">pango_language_get_scripts</a>          (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language,
                                                         int *num_scripts);
<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a>*      <a class="link" href="pango-Scripts-and-Languages.html#pango-language-get-default" title="pango_language_get_default ()">pango_language_get_default</a>          (void);
const char*         <a class="link" href="pango-Scripts-and-Languages.html#pango-language-get-sample-string" title="pango_language_get_sample_string ()">pango_language_get_sample_string</a>    (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language);
</pre>
</div>
<div class="refsect1" lang="en">
<a name="pango-Scripts-and-Languages.description"></a><h2>Description</h2>
<p>
The functions in this section are used to identify the writing
system, or <em class="firstterm">script</em> of individual characters
and of ranges within a larger text string.
</p>
</div>
<div class="refsect1" lang="en">
<a name="pango-Scripts-and-Languages.details"></a><h2>Details</h2>
<div class="refsect2" lang="en">
<a name="PangoScript"></a><h3>enum PangoScript</h3>
<pre class="programlisting">typedef enum {                         /* ISO 15924 code */
      PANGO_SCRIPT_INVALID_CODE = -1,
      PANGO_SCRIPT_COMMON       = 0,   /* Zyyy */
      PANGO_SCRIPT_INHERITED,          /* Qaai */
      PANGO_SCRIPT_ARABIC,             /* Arab */
      PANGO_SCRIPT_ARMENIAN,           /* Armn */
      PANGO_SCRIPT_BENGALI,            /* Beng */
      PANGO_SCRIPT_BOPOMOFO,           /* Bopo */
      PANGO_SCRIPT_CHEROKEE,           /* Cher */
      PANGO_SCRIPT_COPTIC,             /* Qaac */
      PANGO_SCRIPT_CYRILLIC,           /* Cyrl (Cyrs) */
      PANGO_SCRIPT_DESERET,            /* Dsrt */
      PANGO_SCRIPT_DEVANAGARI,         /* Deva */
      PANGO_SCRIPT_ETHIOPIC,           /* Ethi */
      PANGO_SCRIPT_GEORGIAN,           /* Geor (Geon, Geoa) */
      PANGO_SCRIPT_GOTHIC,             /* Goth */
      PANGO_SCRIPT_GREEK,              /* Grek */
      PANGO_SCRIPT_GUJARATI,           /* Gujr */
      PANGO_SCRIPT_GURMUKHI,           /* Guru */
      PANGO_SCRIPT_HAN,                /* Hani */
      PANGO_SCRIPT_HANGUL,             /* Hang */
      PANGO_SCRIPT_HEBREW,             /* Hebr */
      PANGO_SCRIPT_HIRAGANA,           /* Hira */
      PANGO_SCRIPT_KANNADA,            /* Knda */
      PANGO_SCRIPT_KATAKANA,           /* Kana */
      PANGO_SCRIPT_KHMER,              /* Khmr */
      PANGO_SCRIPT_LAO,                /* Laoo */
      PANGO_SCRIPT_LATIN,              /* Latn (Latf, Latg) */
      PANGO_SCRIPT_MALAYALAM,          /* Mlym */
      PANGO_SCRIPT_MONGOLIAN,          /* Mong */
      PANGO_SCRIPT_MYANMAR,            /* Mymr */
      PANGO_SCRIPT_OGHAM,              /* Ogam */
      PANGO_SCRIPT_OLD_ITALIC,         /* Ital */
      PANGO_SCRIPT_ORIYA,              /* Orya */
      PANGO_SCRIPT_RUNIC,              /* Runr */
      PANGO_SCRIPT_SINHALA,            /* Sinh */
      PANGO_SCRIPT_SYRIAC,             /* Syrc (Syrj, Syrn, Syre) */
      PANGO_SCRIPT_TAMIL,              /* Taml */
      PANGO_SCRIPT_TELUGU,             /* Telu */
      PANGO_SCRIPT_THAANA,             /* Thaa */
      PANGO_SCRIPT_THAI,               /* Thai */
      PANGO_SCRIPT_TIBETAN,            /* Tibt */
      PANGO_SCRIPT_CANADIAN_ABORIGINAL, /* Cans */
      PANGO_SCRIPT_YI,                 /* Yiii */
      PANGO_SCRIPT_TAGALOG,            /* Tglg */
      PANGO_SCRIPT_HANUNOO,            /* Hano */
      PANGO_SCRIPT_BUHID,              /* Buhd */
      PANGO_SCRIPT_TAGBANWA,           /* Tagb */

      /* Unicode-4.0 additions */
      PANGO_SCRIPT_BRAILLE,            /* Brai */
      PANGO_SCRIPT_CYPRIOT,            /* Cprt */
      PANGO_SCRIPT_LIMBU,              /* Limb */
      PANGO_SCRIPT_OSMANYA,            /* Osma */
      PANGO_SCRIPT_SHAVIAN,            /* Shaw */
      PANGO_SCRIPT_LINEAR_B,           /* Linb */
      PANGO_SCRIPT_TAI_LE,             /* Tale */
      PANGO_SCRIPT_UGARITIC,           /* Ugar */

      /* Unicode-4.1 additions */
      PANGO_SCRIPT_NEW_TAI_LUE,        /* Talu */
      PANGO_SCRIPT_BUGINESE,           /* Bugi */
      PANGO_SCRIPT_GLAGOLITIC,         /* Glag */
      PANGO_SCRIPT_TIFINAGH,           /* Tfng */
      PANGO_SCRIPT_SYLOTI_NAGRI,       /* Sylo */
      PANGO_SCRIPT_OLD_PERSIAN,        /* Xpeo */
      PANGO_SCRIPT_KHAROSHTHI,         /* Khar */

      /* Unicode-5.0 additions */
      PANGO_SCRIPT_UNKNOWN,            /* Zzzz */
      PANGO_SCRIPT_BALINESE,           /* Bali */
      PANGO_SCRIPT_CUNEIFORM,          /* Xsux */
      PANGO_SCRIPT_PHOENICIAN,         /* Phnx */
      PANGO_SCRIPT_PHAGS_PA,           /* Phag */
      PANGO_SCRIPT_NKO,                /* Nkoo */

      /* Unicode-5.1 additions */
      PANGO_SCRIPT_KAYAH_LI,           /* Kali */
      PANGO_SCRIPT_LEPCHA,             /* Lepc */
      PANGO_SCRIPT_REJANG,             /* Rjng */
      PANGO_SCRIPT_SUNDANESE,          /* Sund */
      PANGO_SCRIPT_SAURASHTRA,         /* Saur */
      PANGO_SCRIPT_CHAM,               /* Cham */
      PANGO_SCRIPT_OL_CHIKI,           /* Olck */
      PANGO_SCRIPT_VAI,                /* Vaii */
      PANGO_SCRIPT_CARIAN,             /* Cari */
      PANGO_SCRIPT_LYCIAN,             /* Lyci */
      PANGO_SCRIPT_LYDIAN              /* Lydi */
} PangoScript;
</pre>
<p>
The <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript"><span class="type">PangoScript</span></a> enumeration identifies different writing
systems. The values correspond to the names as defined in the
Unicode standard.
Note that new types may be added in the future. Applications should be ready
to handle unknown values.  This enumeration is interchangeable with
<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html#GUnicodeScript"
><span class="type">GUnicodeScript</span></a>.  See <a class="ulink" href="http://www.unicode.org/reports/tr24/" target="_top">Unicode Standard Annex
<span class="type">""</span> Script names</a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="PANGO-SCRIPT-INVALID-CODE:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_INVALID_CODE</code></span></p></td>
<td>a value never returned from <a class="link" href="pango-Scripts-and-Languages.html#pango-script-for-unichar" title="pango_script_for_unichar ()"><code class="function">pango_script_for_unichar()</code></a>
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-COMMON:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_COMMON</code></span></p></td>
<td>a character used by multiple different scripts
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-INHERITED:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_INHERITED</code></span></p></td>
<td>a mark glyph that takes its script from the
  base glyph to which it is attached
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-ARABIC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_ARABIC</code></span></p></td>
<td>	Arabic
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-ARMENIAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_ARMENIAN</code></span></p></td>
<td>Armenian
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-BENGALI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_BENGALI</code></span></p></td>
<td>	Bengali
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-BOPOMOFO:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_BOPOMOFO</code></span></p></td>
<td>Bopomofo
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-CHEROKEE:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_CHEROKEE</code></span></p></td>
<td>	Cherokee
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-COPTIC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_COPTIC</code></span></p></td>
<td>	Coptic
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-CYRILLIC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_CYRILLIC</code></span></p></td>
<td>	Cyrillic
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-DESERET:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_DESERET</code></span></p></td>
<td>	Deseret
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-DEVANAGARI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_DEVANAGARI</code></span></p></td>
<td>	Devanagari
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-ETHIOPIC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_ETHIOPIC</code></span></p></td>
<td>	Ethiopic
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-GEORGIAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_GEORGIAN</code></span></p></td>
<td>	Georgian
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-GOTHIC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_GOTHIC</code></span></p></td>
<td>	Gothic
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-GREEK:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_GREEK</code></span></p></td>
<td>	Greek
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-GUJARATI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_GUJARATI</code></span></p></td>
<td>	Gujarati
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-GURMUKHI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_GURMUKHI</code></span></p></td>
<td>	Gurmukhi
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-HAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_HAN</code></span></p></td>
<td>	Han
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-HANGUL:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_HANGUL</code></span></p></td>
<td>	Hangul
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-HEBREW:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_HEBREW</code></span></p></td>
<td>	Hebrew
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-HIRAGANA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_HIRAGANA</code></span></p></td>
<td>	Hiragana
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-KANNADA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_KANNADA</code></span></p></td>
<td>	Kannada
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-KATAKANA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_KATAKANA</code></span></p></td>
<td>	Katakana
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-KHMER:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_KHMER</code></span></p></td>
<td>	Khmer
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-LAO:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_LAO</code></span></p></td>
<td>	Lao
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-LATIN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_LATIN</code></span></p></td>
<td>	Latin
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-MALAYALAM:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_MALAYALAM</code></span></p></td>
<td>	Malayalam
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-MONGOLIAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_MONGOLIAN</code></span></p></td>
<td>	Mongolian
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-MYANMAR:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_MYANMAR</code></span></p></td>
<td>	Myanmar
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-OGHAM:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_OGHAM</code></span></p></td>
<td>	Ogham
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-OLD-ITALIC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_OLD_ITALIC</code></span></p></td>
<td>	Old Italic
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-ORIYA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_ORIYA</code></span></p></td>
<td>	Oriya
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-RUNIC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_RUNIC</code></span></p></td>
<td>	Runic
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-SINHALA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_SINHALA</code></span></p></td>
<td>	Sinhala
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-SYRIAC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_SYRIAC</code></span></p></td>
<td>	Syriac
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-TAMIL:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_TAMIL</code></span></p></td>
<td>	Tamil
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-TELUGU:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_TELUGU</code></span></p></td>
<td>	Telugu
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-THAANA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_THAANA</code></span></p></td>
<td>	Thaana
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-THAI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_THAI</code></span></p></td>
<td>	Thai
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-TIBETAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_TIBETAN</code></span></p></td>
<td>	Tibetan
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-CANADIAN-ABORIGINAL:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_CANADIAN_ABORIGINAL</code></span></p></td>
<td>	Canadian Aboriginal
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-YI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_YI</code></span></p></td>
<td>	Yi
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-TAGALOG:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_TAGALOG</code></span></p></td>
<td>	Tagalog
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-HANUNOO:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_HANUNOO</code></span></p></td>
<td>	Hanunoo
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-BUHID:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_BUHID</code></span></p></td>
<td>	Buhid
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-TAGBANWA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_TAGBANWA</code></span></p></td>
<td>	Tagbanwa
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-BRAILLE:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_BRAILLE</code></span></p></td>
<td>	Braille
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-CYPRIOT:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_CYPRIOT</code></span></p></td>
<td>	Cypriot
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-LIMBU:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_LIMBU</code></span></p></td>
<td>	Limbu
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-OSMANYA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_OSMANYA</code></span></p></td>
<td>	Osmanya
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-SHAVIAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_SHAVIAN</code></span></p></td>
<td>	Shavian
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-LINEAR-B:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_LINEAR_B</code></span></p></td>
<td>	Linear B
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-TAI-LE:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_TAI_LE</code></span></p></td>
<td>	Tai Le
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-UGARITIC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_UGARITIC</code></span></p></td>
<td>	Ugaritic
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-NEW-TAI-LUE:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_NEW_TAI_LUE</code></span></p></td>
<td>	New Tai Lue. Since 1.10
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-BUGINESE:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_BUGINESE</code></span></p></td>
<td>	Buginese. Since 1.10
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-GLAGOLITIC:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_GLAGOLITIC</code></span></p></td>
<td>	Glagolitic. Since 1.10
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-TIFINAGH:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_TIFINAGH</code></span></p></td>
<td>	Tifinagh. Since 1.10
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-SYLOTI-NAGRI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_SYLOTI_NAGRI</code></span></p></td>
<td>	Syloti Nagri. Since 1.10
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-OLD-PERSIAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_OLD_PERSIAN</code></span></p></td>
<td>	Old Persian. Since 1.10
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-KHAROSHTHI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_KHAROSHTHI</code></span></p></td>
<td>	Kharoshthi. Since 1.10
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-UNKNOWN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_UNKNOWN</code></span></p></td>
<td>		an unassigned code point. Since 1.14
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-BALINESE:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_BALINESE</code></span></p></td>
<td>		Balinese. Since 1.14
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-CUNEIFORM:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_CUNEIFORM</code></span></p></td>
<td>	Cuneiform. Since 1.14
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-PHOENICIAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_PHOENICIAN</code></span></p></td>
<td>	Phoenician. Since 1.14
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-PHAGS-PA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_PHAGS_PA</code></span></p></td>
<td>		Phags-pa. Since 1.14
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-NKO:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_NKO</code></span></p></td>
<td>		N'Ko. Since 1.14
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-KAYAH-LI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_KAYAH_LI</code></span></p></td>
<td>  Kayah Li. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-LEPCHA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_LEPCHA</code></span></p></td>
<td>    Lepcha. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-REJANG:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_REJANG</code></span></p></td>
<td>    Rejang. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-SUNDANESE:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_SUNDANESE</code></span></p></td>
<td> Sundanese. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-SAURASHTRA:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_SAURASHTRA</code></span></p></td>
<td>Saurashtra. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-CHAM:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_CHAM</code></span></p></td>
<td>      Cham. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-OL-CHIKI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_OL_CHIKI</code></span></p></td>
<td>  Ol Chiki. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-VAI:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_VAI</code></span></p></td>
<td>       Vai. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-CARIAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_CARIAN</code></span></p></td>
<td>    Carian. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-LYCIAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_LYCIAN</code></span></p></td>
<td>    Lycian. Since 1.20.1
</td>
</tr>
<tr>
<td><p><a name="PANGO-SCRIPT-LYDIAN:CAPS"></a><span class="term"><code class="literal">PANGO_SCRIPT_LYDIAN</code></span></p></td>
<td>    Lydian. Since 1.20.1

</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="PANGO-TYPE-SCRIPT:CAPS"></a><h3>PANGO_TYPE_SCRIPT</h3>
<pre class="programlisting">#define PANGO_TYPE_SCRIPT (pango_script_get_type())
</pre>
<p>
The <a
href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"
><span class="type">GObject</span></a> type for <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript"><span class="type">PangoScript</span></a>
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="PangoScriptIter"></a><h3>PangoScriptIter</h3>
<pre class="programlisting">typedef struct _PangoScriptIter PangoScriptIter;</pre>
<p>
A <a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter"><span class="type">PangoScriptIter</span></a> is used to iterate through a string
and identify ranges in different scripts.</p>
<p>

</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-script-for-unichar"></a><h3>pango_script_for_unichar ()</h3>
<pre class="programlisting"><a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a>         pango_script_for_unichar            (<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html#gunichar"
>gunichar</a> ch);</pre>
<p>
Looks up the <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript"><span class="type">PangoScript</span></a> for a particular character (as defined by
Unicode Standard Annex <span class="type">24</span>). No check is made for <em class="parameter"><code>ch</code></em> being a
valid Unicode character; if you pass in invalid character, the
result is undefined.
</p>
<p>
As of Pango 1.18, this function simply returns the return value of
<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html#g-unichar-get-script"
><code class="function">g_unichar_get_script()</code></a>.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>ch</code></em> :</span></p></td>
<td> a Unicode character
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> the <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript"><span class="type">PangoScript</span></a> for the character.

</td>
</tr>
</tbody>
</table></div>
<p class="since">Since  1.4
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-script-get-sample-language"></a><h3>pango_script_get_sample_language ()</h3>
<pre class="programlisting"><a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a>*      pango_script_get_sample_language    (<a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a> script);</pre>
<p>
Given a script, finds a language tag that is reasonably
representative of that script. This will usually be the
most widely spoken or used language written in that script:
for instance, the sample language for <a class="link" href="pango-Scripts-and-Languages.html#PANGO-SCRIPT-CYRILLIC:CAPS"><code class="literal">PANGO_SCRIPT_CYRILLIC</code></a>
is <code class="literal">ru</code> (Russian), the sample language
for <a class="link" href="pango-Scripts-and-Languages.html#PANGO-SCRIPT-ARABIC:CAPS"><code class="literal">PANGO_SCRIPT_ARABIC</code></a> is <code class="literal">ar</code>.
</p>
<p>
For some
scripts, no sample language will be returned because there
is no language that is sufficiently representative. The best
example of this is <a class="link" href="pango-Scripts-and-Languages.html#PANGO-SCRIPT-HAN:CAPS"><code class="literal">PANGO_SCRIPT_HAN</code></a>, where various different
variants of written Chinese, Japanese, and Korean all use
significantly different sets of Han characters and forms
of shared characters. No sample language can be provided
for many historical scripts as well.
</p>
<p>
As of 1.18, this function checks the environment variables
PANGO_LANGUAGE and LANGUAGE (checked in that order) first.
If one of them is set, it is parsed as a list of language tags
separated by colons or other separators.  This function
will return the first language in the parsed list that Pango
believes may use <em class="parameter"><code>script</code></em> for writing.  This last predicate
is tested using <a class="link" href="pango-Scripts-and-Languages.html#pango-language-includes-script" title="pango_language_includes_script ()"><code class="function">pango_language_includes_script()</code></a>.  This can
be used to control Pango's font selection for non-primary
languages.  For example, a PANGO_LANGUAGE enviroment variable
set to "en:fa" makes Pango choose fonts suitable for Persian (fa) 
instead of Arabic (ar) when a segment of Arabic text is found
in an otherwise non-Arabic text.  The same trick can be used to
choose a default language for <a class="link" href="pango-Scripts-and-Languages.html#PANGO-SCRIPT-HAN:CAPS"><code class="literal">PANGO_SCRIPT_HAN</code></a> when setting
context language is not feasible.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>script</code></em> :</span></p></td>
<td> a <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript"><span class="type">PangoScript</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> a <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a> that is representative
of the script, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a> if no such language exists.

</td>
</tr>
</tbody>
</table></div>
<p class="since">Since  1.4
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-script-iter-new"></a><h3>pango_script_iter_new ()</h3>
<pre class="programlisting"><a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter">PangoScriptIter</a>*    pango_script_iter_new               (const char *text,
                                                         int length);</pre>
<p>
Create a new <a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter"><span class="type">PangoScriptIter</span></a>, used to break a string of
Unicode into runs by text. No copy is made of <em class="parameter"><code>text</code></em>, so
the caller needs to make sure it remains valid until
the iterator is freed with <a class="link" href="pango-Scripts-and-Languages.html#pango-script-iter-free" title="pango_script_iter_free ()"><code class="function">pango_script_iter_free()</code></a>.x</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
<td> a UTF-8 string
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
<td> length of <em class="parameter"><code>text</code></em>, or -1 if <em class="parameter"><code>text</code></em> is nul-terminated.
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> the new script iterator, initialized
 to point at the first range in the text, which should be
 freed with <a class="link" href="pango-Scripts-and-Languages.html#pango-script-iter-free" title="pango_script_iter_free ()"><code class="function">pango_script_iter_free()</code></a>. If the string is
 empty, it will point at an empty range.

</td>
</tr>
</tbody>
</table></div>
<p class="since">Since  1.4
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-script-iter-get-range"></a><h3>pango_script_iter_get_range ()</h3>
<pre class="programlisting">void                pango_script_iter_get_range         (<a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter">PangoScriptIter</a> *iter,
                                                         G_CONST_RETURN char **start,
                                                         G_CONST_RETURN char **end,
                                                         <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a> *script);</pre>
<p>
Gets information about the range to which <em class="parameter"><code>iter</code></em> currently points.
The range is the set of locations p where *start &lt;= p &lt; *end.
(That is, it doesn't include the character stored at *end)</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
<td> a <a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter"><span class="type">PangoScriptIter</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>start</code></em> :</span></p></td>
<td> location to store start position of the range, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td>
<td> location to store end position of the range, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>script</code></em> :</span></p></td>
<td> location to store script for range, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since  1.4
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-script-iter-next"></a><h3>pango_script_iter_next ()</h3>
<pre class="programlisting"><a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            pango_script_iter_next              (<a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter">PangoScriptIter</a> *iter);</pre>
<p>
Advances a <a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter"><span class="type">PangoScriptIter</span></a> to the next range. If <em class="parameter"><code>iter</code></em>
is already at the end, it is left unchanged and <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"
><code class="literal">FALSE</code></a>
is returned.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
<td> a <a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter"><span class="type">PangoScriptIter</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"
><code class="literal">TRUE</code></a> if <em class="parameter"><code>iter</code></em> was successfully advanced.

</td>
</tr>
</tbody>
</table></div>
<p class="since">Since  1.4
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-script-iter-free"></a><h3>pango_script_iter_free ()</h3>
<pre class="programlisting">void                pango_script_iter_free              (<a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter">PangoScriptIter</a> *iter);</pre>
<p>
Frees a <a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter"><span class="type">PangoScriptIter</span></a> created with <a class="link" href="pango-Scripts-and-Languages.html#pango-script-iter-new" title="pango_script_iter_new ()"><code class="function">pango_script_iter_new()</code></a>.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
<td> a <a class="link" href="pango-Scripts-and-Languages.html#PangoScriptIter" title="PangoScriptIter"><span class="type">PangoScriptIter</span></a>
</td>
</tr></tbody>
</table></div>
<p class="since">Since  1.4
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="PangoLanguage"></a><h3>PangoLanguage</h3>
<pre class="programlisting">typedef struct _PangoLanguage PangoLanguage;</pre>
<p>
The <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a> structure is used to
represent a language.
</p>
<p>
<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a> pointers can be efficiently 
copied and compared with each other.
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="PANGO-TYPE-LANGUAGE:CAPS"></a><h3>PANGO_TYPE_LANGUAGE</h3>
<pre class="programlisting">#define PANGO_TYPE_LANGUAGE (pango_language_get_type ())
</pre>
<p>
The <a
href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"
><span class="type">GObject</span></a> type for <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a>. 
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-language-from-string"></a><h3>pango_language_from_string ()</h3>
<pre class="programlisting"><a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a>*      pango_language_from_string          (const char *language);</pre>
<p>
Take a RFC-3066 format language tag as a string and convert it to a
<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a> pointer that can be efficiently copied (copy the
pointer) and compared with other language tags (compare the
pointer.)
</p>
<p>
This function first canonicalizes the string by converting it to
lowercase, mapping '_' to '-', and stripping all characters other
than letters and '-'.
</p>
<p>
Use <a class="link" href="pango-Scripts-and-Languages.html#pango-language-get-default" title="pango_language_get_default ()"><code class="function">pango_language_get_default()</code></a> if you want to get the <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a> for
the current locale of the process.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>language</code></em> :</span></p></td>
<td> a string representing a language tag, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> an opaque pointer to a <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a> structure, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>
              if <em class="parameter"><code>language</code></em> was <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>.  The returned pointer will be valid
              forever after, and should not be freed.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-language-to-string"></a><h3>pango_language_to_string ()</h3>
<pre class="programlisting">const char*         pango_language_to_string            (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language);</pre>
<p>
Gets the RFC-3066 format string representing the given language tag.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>language</code></em> :</span></p></td>
<td> a language tag.
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> a string representing the language tag.  This is owned by
         Pango and should not be freed.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-language-matches"></a><h3>pango_language_matches ()</h3>
<pre class="programlisting"><a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            pango_language_matches              (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language,
                                                         const char *range_list);</pre>
<p>
Checks if a language tag matches one of the elements in a list of
language ranges. A language tag is considered to match a range
in the list if the range is '*', the range is exactly the tag,
or the range is a prefix of the tag, and the character after it
in the tag is '-'.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>language</code></em> :</span></p></td>
<td> a language tag (see <a class="link" href="pango-Scripts-and-Languages.html#pango-language-from-string" title="pango_language_from_string ()"><code class="function">pango_language_from_string()</code></a>),
           <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a> is allowed and matches nothing but '*'
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>range_list</code></em> :</span></p></td>
<td> a list of language ranges, separated by ';', ':',
  ',', or space characters.
  Each element must either be '*', or a RFC 3066 language range
  canonicalized as by <a class="link" href="pango-Scripts-and-Languages.html#pango-language-from-string" title="pango_language_from_string ()"><code class="function">pango_language_from_string()</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"
><code class="literal">TRUE</code></a> if a match was found.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-language-includes-script"></a><h3>pango_language_includes_script ()</h3>
<pre class="programlisting"><a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
>gboolean</a>            pango_language_includes_script      (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language,
                                                         <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a> script);</pre>
<p>
Determines if <em class="parameter"><code>script</code></em> is one of the scripts used to
write <em class="parameter"><code>language</code></em>. The returned value is conservative;
if nothing is known about the language tag <em class="parameter"><code>language</code></em>,
<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"
><code class="literal">TRUE</code></a> will be returned, since, as far as Pango knows,
<em class="parameter"><code>script</code></em> might be used to write <em class="parameter"><code>language</code></em>.
</p>
<p>
This routine is used in Pango's itemization process when
determining if a supplied language tag is relevant to
a particular section of text. It probably is not useful for
applications in most circumstances.
</p>
<p>
This function uses <a class="link" href="pango-Scripts-and-Languages.html#pango-language-get-scripts" title="pango_language_get_scripts ()"><code class="function">pango_language_get_scripts()</code></a> internally.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>language</code></em> :</span></p></td>
<td> a <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a>, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>script</code></em> :</span></p></td>
<td> a <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript"><span class="type">PangoScript</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"
><code class="literal">TRUE</code></a> if <em class="parameter"><code>script</code></em> is one of the scripts used
to write <em class="parameter"><code>language</code></em> or if nothing is known about <em class="parameter"><code>language</code></em>
(including the case that <em class="parameter"><code>language</code></em> is <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>),
<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"
><code class="literal">FALSE</code></a> otherwise.
 
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since  1.4
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-language-get-scripts"></a><h3>pango_language_get_scripts ()</h3>
<pre class="programlisting">const <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript">PangoScript</a>*  pango_language_get_scripts          (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language,
                                                         int *num_scripts);</pre>
<p>
Determines the scripts used to to write <em class="parameter"><code>language</code></em>.
If nothing is known about the language tag <em class="parameter"><code>language</code></em>,
or if <em class="parameter"><code>language</code></em> is <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>, then <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a> is returned.
The list of scripts returned starts with the script that the
language uses most and continues to the one it uses least.
</p>
<p>
The value <em class="parameter"><code>num_script</code></em> points at will be set to the number
of scripts in the returned array (or zero if <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a> is returned).
</p>
<p>
Most languages use only one script for writing, but there are
some that use two (Latin and Cyrillic for example), and a few
use three (Japanese for example).  Applications should not make
any assumptions on the maximum number of scripts returned
though, except that it is positive if the return value is not
<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>, and it is a small number.
</p>
<p>
The <a class="link" href="pango-Scripts-and-Languages.html#pango-language-includes-script" title="pango_language_includes_script ()"><code class="function">pango_language_includes_script()</code></a> function uses this function
internally.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>language</code></em> :</span></p></td>
<td> a <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a>, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>num_scripts</code></em> :</span></p></td>
<td> location to return number of scripts, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> An array of <a class="link" href="pango-Scripts-and-Languages.html#PangoScript" title="enum PangoScript"><span class="type">PangoScript</span></a> values, with the
number of entries in the array stored in <em class="parameter"><code>num_scripts</code></em>, or
<a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a> if Pango does not have any information about this
particular language tag (also the case if <em class="parameter"><code>language</code></em> is <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>).
The returned array is owned by Pango and should not be modified
or freed.
 
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since  1.22
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-language-get-default"></a><h3>pango_language_get_default ()</h3>
<pre class="programlisting"><a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a>*      pango_language_get_default          (void);</pre>
<p>
Returns the <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a> for the current locale of the process.
Note that this can change over the life of an application.
</p>
<p>
On Unix systems, this is the return value is derived from
<code class="literal">setlocale(LC_CTYPE, NULL)</code>, and the user can
affect this through the environment variables LC_ALL, LC_CTYPE or
LANG (checked in that order). The locale string typically is in
the form lang_COUNTRY, where lang is an ISO-639 language code, and
COUNTRY is an ISO-3166 country code. For instance, sv_FI for
Swedish as written in Finland or pt_BR for Portuguese as written in
Brazil.
</p>
<p>
On Windows, the C library does not use any such environment
variables, and setting them won't affect the behavior of functions
like <code class="function">ctime()</code>. The user sets the locale through the Regional Options
in the Control Panel. The C library (in the <code class="function">setlocale()</code> function)
does not use country and language codes, but country and language
names spelled out in English.
However, this function does check the above environment
variables, and does return a Unix-style locale string based on
either said environment variables or the thread's current locale.
</p>
<p>
Your application should call <code class="literal">setlocale(LC_ALL, "");</code>
for the user settings to take effect.  Gtk+ does this in its initialization
functions automatically (by calling <code class="function">gtk_set_locale()</code>).
See <code class="literal">man setlocale</code> for more details.</p>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> the default language as a <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a>, must not be
              freed.

</td>
</tr></tbody>
</table></div>
<p class="since">Since  1.16
</p>
</div>
<hr>
<div class="refsect2" lang="en">
<a name="pango-language-get-sample-string"></a><h3>pango_language_get_sample_string ()</h3>
<pre class="programlisting">const char*         pango_language_get_sample_string    (<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language);</pre>
<p>
Get a string that is representative of the characters needed to
render a particular language.
</p>
<p>
The sample text may be a pangram, but is not necessarily.  It is chosen to
be demonstrative of normal text in the language, as well as exposing font
feature requirements unique to the language.  It is suitable for use
as sample text in a font selection dialog.
</p>
<p>
If <em class="parameter"><code>language</code></em> is <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>, the default language as found by
<a class="link" href="pango-Scripts-and-Languages.html#pango-language-get-default" title="pango_language_get_default ()"><code class="function">pango_language_get_default()</code></a> is used.
</p>
<p>
If Pango does not have a sample string for <em class="parameter"><code>language</code></em>, the classic
"The quick brown fox..." is returned.  This can be detected by
comparing the returned pointer value to that returned for (non-existent)
language code "xx".  That is, compare to:
</p>
<div class="informalexample"><pre class="programlisting">
pango_language_get_sample_string (pango_language_from_string ("xx"))
</pre></div>
<p>

</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>language</code></em> :</span></p></td>
<td> a <a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage"><span class="type">PangoLanguage</span></a>, or <a
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"
><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> the sample string. This value is owned by Pango
  and should not be freed.
</td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.10</div>
</body>
</html>
